Poursuivant avec l'objet de session d'Electron, cette leçon se concentrera sur un objet très spécifique de
l'élément de téléchargement de session.
L'objet d'élément de téléchargement est le résultat de l'événement de téléchargement des sessions.
Vous l'avez peut-être déjà repéré dans la documentation de la session.
Le tout premier événement d'instance de la session, le deuxième paramètre de ce rappel d'événement, nous fournissant
cet élément de téléchargement, couvrira cet objet, ayant sa propre page dédiée dans la documentation.
Mais d'abord, commençons par l'événement Will Download.
N'oubliez pas que l'objet de session gère l'état d'une instance de contenu Web.
Ainsi, cet événement est déclenché lorsqu'un téléchargement est lancé à partir du contenu Web avec une référence à cette instance
de contenu Web qui nous est également transmise dans ce rappel d'événement.
Donc, pour déclencher un téléchargement, nous pouvons ajouter un simple lien de téléchargement dans notre index ouvert de contenu, pas HTML.
Je vais me débarrasser de tout ça.
En ajoutant une image de téléchargement d'en-tête H2 reliant l'image de démarrage dans le répertoire du projet juste pour garder les choses
simples, une image distante fonctionnera également.
Splash dot PMG a fermé le lien et surtout, pour en faire un téléchargement au lieu d'un lien standard,
nous pouvons utiliser le nouvel attribut de téléchargement HTML5.
Sans cet attribut, on accédera simplement à l'image, pas à ce que nous voulons.
Sauvegarde ça.
Et avant d'ajouter l'écouteur will download, voyons le comportement par défaut d'Electron pour gérer les téléchargements.
Je vais enregistrer MINDGAMES pour relancer l'application qui est déjà en cours d'exécution.
Cliquez sur ce lien.
Et nous sommes invités à sélectionner un emplacement pour ce téléchargement à enregistrer, donc très pratique et très probablement
adapté à la majorité des téléchargements d'applications, mais disons que nous voulons prendre le contrôle total de ce
téléchargement.
C'est là qu'intervient l'événement de téléchargement mondial avec son objet d'élément de téléchargement.
Cet objet nous fournit des événements liés à la progression du téléchargement et un tas de méthodes pour
obtenir des informations sur le téléchargement et le gérer, y compris la suspension du téléchargement, sa
reprise, etc.
En mai, ne commencez pas toujours par écouter un téléchargement sur la fenêtre principale du contenu Web de Windows en utilisant
la section par défaut.
Exigez donc le module de session et créez une fenêtre affectée au succès comme avant la session par défaut de la
session.
Et je vais me débarrasser des outils de développement car ceux-ci peuvent parfois provoquer quelques avertissements dans le terminal lorsque vous cliquez sur les
liens de téléchargement.
Ensuite, avec une référence à la section par défaut, listen for va télécharger avec un rappel
fournissant l'objet événement, l'élément téléchargé utilisera.
Et enfin le contenu Web qui a lancé ce téléchargement.
Je vais ajouter quelques messages de journal pour illustrer cet élément de téléchargement à partir du téléchargement.
Le nom du fichier en cours de téléchargement, que nous pouvons obtenir avec l'élément de téléchargement, obtenir le nom du
fichier et la taille totale de l'élément de téléchargement téléchargé, obtenir le total des octets économisés.
Cliquez sur le lien de téléchargement.
Je vais annuler cela, et plus dans le terminal, nous voyons ces messages, le fichier qui aurait été téléchargé si je
n'avais pas annulé avec la taille du téléchargement en bitts, notez que ce nom de fichier par défaut correspond au nom de la ressource que
nous sont sur le point d'être téléchargés, mais nous pouvons également l'enregistrer sous n'importe quel autre nom.
Voyons un exemple de téléchargement de ce fichier sans demander à l'utilisateur de l'enregistrer.
Ensuite, je modifierai ces messages de journal pour contenir les valeurs déconnectées dans des variables, en référençant le nombre total d'octets en
tant que taille de fichier.
Et le nom du fichier comme nom de fichier, puis pour télécharger ce fichier sur la machine de l'utilisateur, ce qui signifie automatiquement aucune invite
comme nous l'avons obtenu par défaut, nous pouvons simplement fournir un chemin pour le sauvegarder.
Pour cela étant l'invite pour appeler l'élément de téléchargement dit chemin de sauvegarde, je vais l'enregistrer sur
le bureau.
Donc, si vous vous souvenez d'une leçon précédente, nous pouvons obtenir le chemin vers le bureau de
l'utilisateur avec l'instance d'application appelant dot get path et lui passant le bureau.
Ajoutez à ce chemin le nom de fichier slash nom de fichier.
À ce stade, vous pouvez également l'enregistrer sous un nom de fichier différent de celui du téléchargement.
Mais assurez-vous d'avoir la bonne extension, enregistrez mon bureau derrière cette application afin que nous voyions le
téléchargement apparaître.
Cliquez sur.
Et ce sont les images téléchargées sur mon bureau sans aucune invite.
OK, donc cette méthode convient parfaitement aux petits fichiers téléchargés en une seconde environ.
Mais disons que nous téléchargeons un fichier plus volumineux et que nous voulons fournir à l'utilisateur des commentaires sur la
progression du téléchargement.
Nous pouvons le faire en écoutant un événement de progression sur cet élément de téléchargement pour démontrer correctement, nous
aurons besoin d'un fichier légèrement plus volumineux à télécharger et, très important, que ce soit un fichier distant.
Un fichier local sera, bien sûr, téléchargé instantanément, donc cela n'aura pas beaucoup de sens.
Je vais simplement utiliser un service de téléchargement spécifiquement des exemples de fichiers, dot com.
Le lien est dans les ressources amoindries.
N'hésitez pas, cependant, à utiliser tout autre fichier de navigation de ressources distantes.
Je vais télécharger un fichier audio.
Sélectionnez le type de fichier et la taille de téléchargement, je vais utiliser ce fichier mp3 de cinq mégapixels, cliquez pour copier le lien et le
remettre en index sur HDMI.
Je remplacerai ce lien vers Slashdot PMG par le NewLink.
Sauf que.
Et maintenant, dans ce sera l'événement de téléchargement.
Donc toujours dans le contexte d'un téléchargement spécifique, nous pouvons écouter sur l'élément téléchargé pour l'événement mis
à jour, passer un rappel avec l'objet événement et un état de paramètre d'état étant une chaîne de progression ou
d'interruption en cas de problème.
Nous cherchons à connaître la progression du téléchargement ici.
Ainsi, la première variable que vous souhaitez définir est l'octet reçu jusqu'à présent attribué à l'élément de téléchargement reçu.
Dot get reçus octets.
Ensuite, assurez-vous que le téléchargement progresse réellement en vérifiant l'état si l'état est égal à.
Progresser.
Et nous avons déjà reçu des données, donc vérifier si reçu est vrai ou non, zéro, un signe
pour faire progresser le pourcentage reçu jusqu'à présent.
Nous pouvons l'obtenir en divisant les bits reçus par le nombre total d'octets à télécharger à 100 fois.
Et pour en faire un tour, non, je vais l'exécuter en maths, avec un point rond enregistré ce pourcentage au terminal pour le
moment.
Sauver.
Cliquez sur le téléchargement et vérifiez dans le terminal.
Et là, nous voyons le pourcentage de progression enregistré jusqu'à 100% avec 100 déclenchements plusieurs fois lorsque le téléchargement
est finalisé et écrit sur le disque.
Donc, avec cela, voyons un exemple très basique d'affichage de cela au client dans l'index, pas dans
GML.
J'ajouterai un élément de progression, une valeur initiale de zéro et un maximum de 100 avec une idée de progression.
Vous n'avez pas besoin de ce texte dans la balise.
Encore une fois, ceci étant un exemple très rudimentaire, mais pour rendre cet élément
accessible dans la fenêtre globale de la fenêtre de cette fenêtre de navigateur ou plus précisément, le contenu
Web du navigateur Windows, j'écoute la fenêtre dot progress document dot get aliment by IED progress.
Donc cet élément passe ensuite dans notre processeur principal, nous pouvons mettre à jour cet élément via son contenu Web.
N'oubliez pas que nous obtenons le contenu Web responsable de ce téléchargement ici.
Donc, sur ce contenu Web, appel instantané, exécutez JavaScript.
Window dot progress, notre élément de progression dans la portée globale de ce contenu Web définit sa
valeur égale à progress.
Cette variable ici, donc pour récapituler, à chaque fois que ce téléchargement progresse, nous calculons le pourcentage du téléchargement par chaque
reçu puis définissons la valeur de l'élément de progression HTML dans le contenu Web des téléchargements, que
nous avons référencé par son ID dans le processus Renderer .
Sauver.
Nous voyons l'élément de progression vide ici, supprimez ce fichier que nous avons déjà téléchargé.
Cliquez à nouveau sur le lien.
Et cette barre de progression se remplit au fur et à mesure que le phylis télécharge un exemple très simple, mais comme vous pouvez le
voir, nous avons un contrôle total sur les téléchargements d'applications avec l'élément de téléchargement dans une application de production.
Bien sûr, vous pouvez écouter les interruptions, suspendre le téléchargement et bien plus encore.